The ability to communicate with others has always been an important function for people. First the telegraph, and then the telephone revolutionized communication, by making communication at a distance possible. The cellular telephone marked a further turning point in communication, as people were no longer tied to a phone with a fixed physical location. And the more recent Bluetooth standard (Specification of the Bluetooth System, Version 1.1, Feb. 22, 2001) and 802.11a standard (IEEE Standard 802.11a-1999, available on the Institute of Electrical and Electronics Engineers web site, http://standards.ieee.org/reading/ieee/std/lanman/802.11a-1999.pdf) describe how wireless communication may be achieved using mobile devices.
Where mobile devices attempt to intercommunicate, a mobile ad-hoc network (MANET) is set up. In contrast to the typically-envisioned computer network, a MANET does not consist of separate servers and clients. Instead, each mobile device acts as both client and server. That is, each mobile device is responsible for not only sending messages on its own, but also for routing messages. Further, each mobile device needs to be able to route messages sent by a different device, and bound for a different destination.
FIG. 1A shows a scattering of mobile ad-hoc network devices 105. In FIG. 1A, a number of mobile devices are scattered around a location. The location may be a mall, sporting arena, city, or any other type of location, without any limit. In the discussion below, for simplicity of description each person using a mobile device will be described as able to communicate with other persons, although in truth it is the mobile devices that communicate with each other. For example, although the description below may talk about Aaron 110 communicating with Beth 125, it is really Aaron's device that communicates with Beth's device.
Each mobile device has a limited range: for example, Aaron's device 110 has a range 115 shown as a dashed circle. Thus, not every other mobile device has a direct line of communication with every other device. For example, Beth 125 is within direct communications range of Aaron 110, but Charlie 130 is not within direct communications range of Aaron 110.
The intuitive approach for managing a MANET is to have each device be aware of all other devices in the MANET. FIG. 1B shows a mobile ad-hoc network 195 established among the mobile ad-hoc network devices of FIG. 1A. As may be seen in FIG. 1B, Aaron 110 may communicate directly with Beth 125, Elizabeth 140, Harry 155, and Isis 160, but may not communicate directly with Charlie 130 or David 135. Nevertheless, Aaron 110 may communicate with Charlie 130 or David 135 through Beth 125 or Isis 160, respectively.
Even if a person is in the MANET, he may not be reachable. For example, consider Oscar 190. Even if Oscar's device is active within the network, given Oscar's location, Oscar 190 may communicate with other devices in the MANET only through Mark 180. If Mark 180 leaves the network (e.g., by turning off his device), Oscar 190 may neither send nor receive messages from anyone else in the MANET.
There are three problems with the intuitive approach to managing a MANET. The first problem is bandwidth. As devices enter, leave, and move around the MANET, the MANET is constantly changing. Requiring each device in the MANET to be aware of changes made by the entry, departure, or movement of a device would consume a great deal of the available bandwidth.
The second problem with the intuitive approach to managing a MANET is power. Mobile devices are, by definition, not tethered to a power source. That is, the power source is mobile with the device. Typically, this means battery power. Since battery power is limited and communicating within the network is power-intensive, having each device update itself as another device enters, leaves, or moves with the MANET may consume a large percentage of the available power.
The third problem with the intuitive approach to managing a MANET is complexity. As the number of devices in the MANET increases, the number of routes through the MANET increases exponentially. For even a relatively small number of devices (100 is typically considered a sizeable MANET), the time required to update a routing table for the MANET may take longer until another device enters, leaves, or moves within the MANET. In addition, the space requirements for storing the routing table may quickly exceed the available space in the mobile device.
The present invention addresses this and other problems associated with the prior art.